Skip to content

feat(office): add transactional XLSX create and batch#173

Merged
bobzhang merged 22 commits into
mainfrom
agent/office-x3-xlsx-batch
Jul 19, 2026
Merged

feat(office): add transactional XLSX create and batch#173
bobzhang merged 22 commits into
mainfrom
agent/office-x3-xlsx-batch

Conversation

@bobzhang

@bobzhang bobzhang commented Jul 17, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • add a reusable async fresh-package transaction with bounded validation and atomic publication
  • add strict resource-accounted xlsx.batch/1 plans and a shared transactional XLSX mutation SDK
  • expose canonical office create xlsx and office batch commands with versioned JSON results, capability discovery, and stable errors
  • reuse the strict plan parser in the legacy XLSX CLI
  • harden XLSX read/write resource limits, namespace-aware OOXML relationships, and preservation-safe drawing round trips

Why

This closes the X3 parity gap with OfficeCLI while keeping mutation safety, limits, and publication semantics in one future-proof transaction boundary. It uses moonbitlang/async throughout and introduces no C stubs.

Impact

Agents can now create validated XLSX packages and apply bounded multi-operation scripts atomically. Creation is no-replace by default, separate batch outputs require explicit overwrite, dry runs perform full validation, zero-op in-place batches preserve source bytes, and changed batches report full-workbook rewrite preservation evidence.

The exact CI-tested head is 591654d1 with merge base 7082fa3d. Later
main movement is confined to disjoint pdflite changes.

Validation

  • moon info && moon fmt — clean, with no source or .mbti drift
  • moon check --target native
  • moon check --target wasm
  • moon check --target js
  • moon test --target native
  • moon test --target wasm
  • moon test --target js
  • focused Office XLSX transaction tests on native and Wasm — 13/13 on each target
  • direct-read unused-relationship resource-budget regression on native, Wasm, and JavaScript
  • native CLI build for XLSX, DOCX, Office, and pdflite
  • Office CLI Cram — 147/147
  • Microsoft DocumentFormat.OpenXml SDK acceptance through the native workspace suite
  • exact-head GitHub CI, including macOS and Windows transactional-editing jobs
  • fresh independent Codex CLI review found a relationship-preflight resource-budget blocker; 591654d1 fixes it and adds exact regression coverage

Closes #162

@bobzhang
bobzhang changed the base branch from agent/office-x2-xlsx-read to main July 19, 2026 11:45
@bobzhang
bobzhang force-pushed the agent/office-x3-xlsx-batch branch from 9ce98a9 to d6f6664 Compare July 19, 2026 13:16
@bobzhang
bobzhang force-pushed the agent/office-x3-xlsx-batch branch from 65cd417 to 822de26 Compare July 19, 2026 13:35
@bobzhang
bobzhang marked this pull request as ready for review July 19, 2026 14:01
@bobzhang
bobzhang merged commit e79e6f6 into main Jul 19, 2026
4 checks passed
@bobzhang
bobzhang deleted the agent/office-x3-xlsx-batch branch July 19, 2026 14:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

office X3: add transactional XLSX create and batch mutations

1 participant